package com.ocom.aiot.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ocom.aiot.vo.accessdevice.AddDeviceInfoVo;
import com.ocom.aiot.vo.accessdevice.GetDeviceInfoVo;
import com.ocom.aiot.vo.accessdevice.SetDeviceStatusVo;
import com.ocom.common.entity.aiot.EntityMjDeviceInfo;

import java.util.List;

public interface MjDeviceInfoService extends IService<EntityMjDeviceInfo> {

    public EntityMjDeviceInfo GetDeviceList(String machNo);

    public void updateAppVer(Long comId, String machNo, String versionCode);

    // 2.2.1.获取设备信息（getDeviceInfo）
    public List<EntityMjDeviceInfo> AccessDeviceGetDeviceInfo(GetDeviceInfoVo getDeviceInfoVo);

    // 2.3.2.添加设备信息（addDeviceInfo）
    public void AccessDeviceAddDeviceInfo(AddDeviceInfoVo addDeviceInfoVo);

    //GetDeviceByDeviceNo
    public EntityMjDeviceInfo GetDeviceByDeviceNo(String deviceNo);

    // 2.3.3.修改设备信息（updateDeviceInfo）
    public void AccessDeviceUpdateDeviceInfo(EntityMjDeviceInfo entityMjDeviceInfo);

    //2.3.4.删除设备信息（deleteDeviceInfo）
    public EntityMjDeviceInfo AccessDeviceDeleteDeviceInfo(String deviceNo,Integer force);


    //修改最后通讯时间
    public void UpdateCommTime(String machNo);

    // 2.4.5.SaaS平台设置设备状态（SetDeviceStatus）
    public void AccessDeviceSetDeviceStatus(SetDeviceStatusVo setDeviceStatusVo);

    //1、从总库设备信息表mj_device_list找到device_no=machNo的记录
    public EntityMjDeviceInfo selectDeviceInfo(String machNo);

    //修改通信协议和最后通信时间
    public  void updateCommTimeCommMode(String machNo,Integer commMode);


    public void updateAppVerLast(Long companyId,String machNo, String AppVerTab);


    //修改Jobid数据
    public void updateJobId(Long companyId, String machNo, Long jobId);
}
